#include "mainwindow.h"
#include "./ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    //创建菜单栏
    QMenuBar *menuBar = new QMenuBar();
    //将菜单栏放入窗口中
    setMenuBar(menuBar);
    //添加菜单
    QMenu* filemenu =  menuBar->addMenu("文件");
    //添加菜单项
    QAction* newAction = filemenu->addAction(("新建"));

    //点击新建按钮天厨对话框



    newAction->setIcon(QIcon(":/image/嗯.png"));
    //添加分割线
    filemenu->addSeparator();
    QAction* exitAction = filemenu->addAction(("退出"));
    exitAction->setIcon(QIcon(":/image/退出.png"));
    //点击退出
    connect(exitAction, &QAction::triggered,this,&QMainWindow::close);



    //添加工具栏
    QToolBar* toolbar =  new QToolBar(this);
    addToolBar(toolbar);


    //工具栏中添加内容
    //toolbar->addAction(newAction);
    toolbar->addSeparator();
    //工具栏中添加控件
    QPushButton* exitbutton = new QPushButton("退出",this);
    toolbar->addWidget(exitbutton);
    connect(exitbutton,&QPushButton::clicked,this,&QMainWindow::close);

    //设置工具栏只允许左右停靠
    toolbar->setAllowedAreas(Qt::LeftToolBarArea | Qt::RightToolBarArea);
    //设置工具栏浮动
    toolbar->setFloatable(false);



    //添加状态栏
    QStatusBar* statusbar = new QStatusBar();
    setStatusBar(statusbar);

    QLabel* label = new QLabel(this);
    label->setText("状态栏");

    QLabel* label2 = new QLabel(this);
    label2->setText("状态栏");
    //状态添加控件
    statusbar->addWidget(label);//左侧状态栏
    statusbar->addPermanentWidget(label2);//右侧状态栏

    //添加图片到状态栏





    //添加铆接部件(浮动窗口)
    QDockWidget* dockwidget = new QDockWidget("Hello",this);
    addDockWidget(Qt::RightDockWidgetArea,dockwidget);
    dockwidget->setFixedSize(300,400);
    //浮动窗口中添加按钮
    QPushButton* dockwidgetbtn1 = new QPushButton("exit",dockwidget);
    dockwidgetbtn1->setFixedSize(60, 30);//设置大小
    dockwidgetbtn1->move(20,20);//移动位置
    //点击按钮 关闭浮动窗口
    connect(dockwidgetbtn1,&QPushButton::clicked,dockwidget,&QMainWindow::close);



    //设置核心部件
    QLabel* centrallabel = new QLabel("Hello World",this);
    //设置对齐方式
    centrallabel->setAlignment(Qt::AlignCenter);//居中对齐
    centrallabel->setWordWrap(true);//自动换行
    setCentralWidget(centrallabel);












}

MainWindow::~MainWindow()
{
    delete ui;
}
